Tenta assim:
local items =
{ --[numeração] = {id = ID DO ITEM, count = QUANTIDADE DO ITEM}
[1]={id=2159, count=1}, --
[2]={id=2695, count=1}, --
[3]={id=2090, count=1}, --
[4]={id=6570, count=1}, --
[5]={id=6571, count=1}, --
[6]={id=7632, count=1}, --
[7]={id=7633, count=1}, --
[8]={id=2153, count=1}, --
[9]={id="level", count=1}, --
}
function doPlayerAddLevel(cid, amount, round)
local newExp = 0
local currentLevel = getPlayerLevel(cid)
if amount > 0 then
newExp = getExperienceForLevel(currentLevel + amount) - (round and getPlayerExperience(cid) or getExperienceForLevel(currentLevel))
else
newExp = -((round and getPlayerExperience(cid) or getExperienceForLevel(currentLevel)) - getExperienceForLevel(currentLevel + amount))
end
return doPlayerAddExp(cid, newExp)
end
function onUse(cid, item, fromPosition, itemEx, toPosition)
local a = math.random(1, #items)
if type(items[a].id) == "string" then
doPlayerAddLevel(cid, items[a].count)
else
doPlayerAddItem(cid, items[a].id, items[a].count)
end
doSendAnimatedText(getPlayerPosition(cid), "Box!", TEXTCOLOR_GREEN)
doPlayerSendTextMessage(cid, 27, "Você abriu a box e ganhou ".. items[a].count .. ".")
doRemoveItem(item.uid, 1)
return true
end






info
Grupo: Campones
Registrado: 14/02/13
Posts: 48
Reputação: +1
Char no Tibia: Bukito
--Bom eu uso esse script ele funciona, mais quero que der level ou 1 item aleatório que ta na tabela do script--
Obs. os items já estão dando, só falta o level e claro pode dar level ou 1 item. Não os 2 de uma vez.
ERRO:
1° nao esta dando level.
2° na mensagem "Você abriu a box e ganhou 1 blablabla."
CERTO:
1° Dar 5 leveis se nao vim os items da tabela
2° na mensagem "Você abriu a box e ganhou 1 blablabla." - No blablabla aparecer o nome do item que vim ou o level.
actions/scripts:
Editado Setembro 3 por xCookie